#include "firstplugin.h"
#include <QVBoxLayout>
#include <QLabel>
#include <QPushButton>

QString FirstPlugin::name() const
{
    return "First Plugin";
}

QWidget* FirstPlugin::createWidget(QWidget* parent)
{
    QWidget* widget = new QWidget(parent);
    QVBoxLayout* layout = new QVBoxLayout(widget);
    
    QLabel* label = new QLabel("这是第一个插件的界面", widget);
    
    // 初始化infoLabel
    infoLabel = new QLabel("共享变量: 未设置", widget);
    
    QPushButton* button = new QPushButton("点击我", widget);
    
    QObject::connect(button, &QPushButton::clicked, [label]() {
        label->setText("按钮被点击了！");
    });
    
    layout->addWidget(label);
    layout->addWidget(infoLabel);
    layout->addWidget(button);
    layout->addStretch();
    
    return widget;
}

void FirstPlugin::setSharedValue(const QString& value)
{
    // 安全地设置共享值，检查infoLabel是否已初始化
    if (infoLabel) {
        infoLabel->setText(QString("共享变量: %1").arg(value));
    }
}
